char* html = "<!doctype html>\r\n"
   "<html lang=\"en\">\r"
   "\n"
   "  <head>\r\n"
   "    <meta charset=\""
   "UTF-8\" />\r\n"
   "    <link rel=\"icon"
   "\" type=\"image/svg+"
   "xml\" href=\"/src/as"
   "sets/vite.svg\" />\r"
   "\n"
   "    <meta name=\"vie"
   "wport\" content=\"wi"
   "dth=device-width, in"
   "itial-scale=1.0\" />"
   "\r\n"
   "    <title>Vite App<"
   "/title>\r\n"
   "    <script type=\"m"
   "odule\" crossorigin>"
   "var e,n=(e,n,t)=>new"
   " Promise((o,r)=>{var"
   " i=e=>{try{l(t.next("
   "e))}catch(n){r(n)}},"
   "c=e=>{try{l(t.throw("
   "e))}catch(n){r(n)}},"
   "l=e=>e.done?o(e.valu"
   "e):Promise.resolve(e"
   ".value).then(i,c);l("
   "(t=t.apply(e,n)).nex"
   "t())});!function(){c"
   "onst e=document.crea"
   "teElement(\"link\")."
   "relList;if(!(e&&e.su"
   "pports&&e.supports("
   "\"modulepreload\")))"
   "{for(const e of docu"
   "ment.querySelectorAl"
   "l(\'link[rel=\"modul"
   "epreload\"]\'))n(e);"
   "new MutationObserver"
   "(e=>{for(const t of "
   "e)if(\"childList\"=="
   "=t.type)for(const e "
   "of t.addedNodes)\"LI"
   "NK\"===e.tagName&&\""
   "modulepreload\"===e."
   "rel&&n(e)}).observe("
   "document,{childList:"
   "!0,subtree:!0})}func"
   "tion n(e){if(e.ep)re"
   "turn;e.ep=!0;const n"
   "=function(e){const n"
   "={};return e.integri"
   "ty&&(n.integrity=e.i"
   "ntegrity),e.referrer"
   "Policy&&(n.referrerP"
   "olicy=e.referrerPoli"
   "cy),\"use-credential"
   "s\"===e.crossOrigin?"
   "n.credentials=\"incl"
   "ude\":\"anonymous\"="
   "==e.crossOrigin?n.cr"
   "edentials=\"omit\":n"
   ".credentials=\"same-"
   "origin\",n}(e);fetch"
   "(e.href,n)}}(),docum"
   "ent.querySelector(\""
   "#app\").innerHTML=\'"
   "\\n  <div class=\"ho"
   "me\">\\n    <a href="
   "\"https://www.hanxia"
   "oxin.cn/pi/\" target"
   "=\"_blank\" class=\""
   "logo\">\\n      <img"
   " src=\"https://stati"
   "c.hanxiaoxin.cn/gifs"
   "/onecat1.gif\" class"
   "=\"logo\" alt=\"Vite"
   " logo\" />\\n    </a"
   ">\\n    \\n    <h3>W"
   "elcome To ESP8266!</"
   "h1>\\n    <div class"
   "=\"card\">\\n      <"
   "button id=\"counter"
   "\" type=\"button\"><"
   "/button>\\n      <bu"
   "tton id=\"uploader\""
   " type=\"button\"></b"
   "utton>\\n    </div>"
   "\\n  </div>\\n\',fun"
   "ction(e){let t=0;fet"
   "ch(\"/info\").then(e"
   "=>n(null,null,functi"
   "on*(){try{const n=yi"
   "eld e.json();console"
   ".log(n);const t=n.vi"
   "sited||0;o(t)}catch("
   "n){console.log(n)}})"
   ");const o=n=>{t=n,e."
   "innerHTML=`访问人数: ${t"
   "}`};e.addEventListen"
   "er(\"click\",()=>{o("
   "t+1),setTimeout(()=>"
   "{e.innerHTML=\"正在前往少"
   "年派奇幻漂流~\"},500),setT"
   "imeout(()=>{location"
   ".href=\"https://www."
   "hanxiaoxin.cn/pi/\"}"
   ",3e3)}),o(\"-\")}(do"
   "cument.querySelector"
   "(\"#counter\")),(e=d"
   "ocument.querySelecto"
   "r(\"#uploader\")).ad"
   "dEventListener(\"cli"
   "ck\",()=>{const e=do"
   "cument.createElement"
   "(\"input\");e.type="
   "\"file\",e.style.dis"
   "play=\"none\",e.addE"
   "ventListener(\"chang"
   "e\",()=>n(null,null,"
   "function*(){const n="
   "e.files[0];if(!n)ret"
   "urn;const t=new Form"
   "Data;t.append(\"file"
   "\",n,n.name);try{con"
   "st e=yield fetch(\"/"
   "upload\",{method:\"P"
   "OST\",body:t}),n=yie"
   "ld e.json();console."
   "log(\"上传成功:\",n)}cat"
   "ch(o){console.error("
   "\"上传失败:\",o)}})),doc"
   "ument.body.appendChi"
   "ld(e),e.click(),docu"
   "ment.body.removeChil"
   "d(e)}),e.innerHTML="
   "\"上传文件\";</script>\r"
   "\n"
   "    <style rel=\"sty"
   "lesheet\" crossorigi"
   "n>:root{font-family:"
   "system-ui,Avenir,Hel"
   "vetica,Arial,sans-se"
   "rif;line-height:1.5;"
   "font-weight:400;colo"
   "r-scheme:light dark;"
   "color:#ffffffde;back"
   "ground-color:#242424"
   ";font-synthesis:none"
   ";text-rendering:opti"
   "mizeLegibility;-webk"
   "it-font-smoothing:an"
   "tialiased;-moz-osx-f"
   "ont-smoothing:graysc"
   "ale}a{font-weight:50"
   "0;color:#646cff;text"
   "-decoration:inherit}"
   "a:hover{color:#535bf"
   "2}body{margin:0;disp"
   "lay:flex;place-items"
   ":center;width:100vw;"
   "height:100vh}h1{font"
   "-size:3.2em;line-hei"
   "ght:1.1}#app{width:1"
   "00%;height:100%;marg"
   "in:0 auto;text-align"
   ":center;display:flex"
   ";flex-direction:colu"
   "mn;align-items:cente"
   "r;justify-content:ce"
   "nter}.logo{height:16"
   "em;padding:1.5em;wil"
   "l-change:filter;tran"
   "sition:filter .3s}.l"
   "ogo:hover{filter:dro"
   "p-shadow(0 0 2em #64"
   "6cffaa)}.logo.vanill"
   "a:hover{filter:drop-"
   "shadow(0 0 2em #f7df"
   "1eaa)}.card{padding:"
   "2em}.read-the-docs{c"
   "olor:#888}button{bor"
   "der-radius:8px;borde"
   "r:1px solid transpar"
   "ent;padding:.6em 1.2"
   "em;font-size:1em;fon"
   "t-weight:500;font-fa"
   "mily:inherit;backgro"
   "und-color:#1a1a1a;cu"
   "rsor:pointer;transit"
   "ion:border-color .25"
   "s;outline:none}butto"
   "n:hover{border-color"
   ":#646cff}@media (pre"
   "fers-color-scheme: l"
   "ight){:root{color:#2"
   "13547;background-col"
   "or:#fff}a:hover{colo"
   "r:#747bff}button{bac"
   "kground-color:#f9f9f"
   "9}}</style>\r\n"
   "  </head>\r\n"
   "  <body>\r\n"
   "    <div id=\"app\">"
   "</div>\r\n"
   "  </body>\r\n"
   "</html>\r\n";